\title{Reference}

{{navbar}}

There are four modules in Edward:
\texttt{ed.criticisms},
\texttt{ed.inferences},
\texttt{ed.models},
and
\texttt{ed.util}.

\subsubsection{Criticism}

\texttt{ed.criticisms} is comprised of functions. They operate on
random variables in a model or they operate on NumPy arrays
representing values drawn from the random variables.

\begin{itemize}
  \item {{criticisms}}
\end{itemize}

\subsubsection{Inference}

\texttt{ed.inferences} is mostly comprised of classes. They are
organized in a class hierarchy, where methods are shared via parent
classes and \texttt{Inference} is the top-most base class.

\begin{itemize}
  \item @{ed.inferences.Inference}
  \item @{ed.inferences.VariationalInference}
    \begin{itemize}
    \item @{ed.inferences.KLqp}
      \begin{itemize}
      \item @{ed.inferences.ReparameterizationKLqp}
      \item @{ed.inferences.ReparameterizationKLKLqp}
      \item @{ed.inferences.ReparameterizationEntropyKLqp}
      \item @{ed.inferences.ScoreKLqp}
      \item @{ed.inferences.ScoreKLKLqp}
      \item @{ed.inferences.ScoreEntropyKLqp}
      \end{itemize}
    \item @{ed.inferences.KLpq}
    \item @{ed.inferences.GANInference}
      \begin{itemize}
      \item @{ed.inferences.BiGANInference}
      \item @{ed.inferences.ImplicitKLqp}
      \item @{ed.inferences.WGANInference}
      \end{itemize}
    \item @{ed.inferences.MAP}
      \begin{itemize}
      \item @{ed.inferences.Laplace}
      \end{itemize}
    \end{itemize}
  \item @{ed.inferences.MonteCarlo}
    \begin{itemize}
    \item @{ed.inferences.Gibbs}
    \item @{ed.inferences.MetropolisHastings}
    \item @{ed.inferences.HMC}
    \item @{ed.inferences.SGLD}
    \item @{ed.inferences.SGHMC}
    \end{itemize}
  \item @{ed.inferences.complete_conditional}
\end{itemize}

\subsubsection{Models}

\texttt{ed.models} is comprised of random variables.
The list of available random variables depends on the TensorFlow
version installed. For TensorFlow {{tensorflow_version}}, the
following are available:

\begin{itemize}
  \item @{ed.models.RandomVariable}
  \item {{models}}
\end{itemize}

\subsubsection{Utilities}

\texttt{ed.util} is comprised of functions for miscellaneous usage.

\begin{itemize}
  \item {{util}}
  \item @{ed.VERSION}
  \item @{ed.__version__}
\end{itemize}
